package com.zzuli.yxypre.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import jdk.net.SocketFlow;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * 用户创建的歌单表
 * @auther pony
 * @create 2023-05-08 20:48
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Sheet implements Comparable<Sheet>{
    private Integer id; //id
    private String name; //歌单的名字
    private String type; //歌单类型
    private String img; //歌单图片
    private Integer status; //歌单状态
    private String remarks; //歌单简介

    // 不映射数据库
    @TableField(exist = false)
    private List<User> userList; //创建歌单的用户名

    // 不映射数据库
    @TableField(exist = false)
    private List<Song> songList; //歌单下所有歌曲

    //此属性不映射数据库
    @TableField(exist = false)
    private Integer commentCount; //专辑的评论数

    //是否被登录用户所喜欢 不映射数据库
    @TableField(exist = false)
    private Integer isLove; //喜欢 1:喜欢 2：不喜欢

    //是否是登录用户创建的歌单，是才有修改权限
    @TableField(exist = false)
    private Integer isEdit; //1:是 2：不是

    // 标签处理后的数据
    @TableField(exist = false)
    private List<String> tagList; //1:是 2：不是

    // 歌单播放量
    @TableField(exist = false)
    private Integer playCount;

    @Override
    public int compareTo(Sheet sheet) {
        if (this.playCount > sheet.playCount){
            return -1;
        }else {
            return 1;
        }
    }
}
